<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>menu</title>
    <link rel="stylesheet" href="../../lib/layui-v2.6.3/css/layui.css" media="all">
    <link rel="stylesheet" href="../../css/public.css" media="all">
    <style>
        .layui-btn:not(.layui-btn-lg ):not(.layui-btn-sm):not(.layui-btn-xs) {
            height: 34px;
            line-height: 34px;
            padding: 0 8px;
        }
    </style>
</head>
<body>

<div class="layui-container:1190px">
    <div class="layui-row">
        <div class="layui-col-md2">

            <div class="layuimini-container">
                <div class="layuimini-main" style="width: 90%;height: 760px">
                    <div id="test1" class="demo-tree demo-tree-box"></div>
                </div>
            </div>


        </div>
        <div class="layui-col-md10">

            <div class="layuimini-container">
                <div class="layuimini-main" style="width: 100%">

                    <fieldset class="table-search-fieldset">
                        <legend>搜索信息</legend>
                        <div style="margin: 10px 10px 10px 10px">
                            <form class="layui-form layui-form-pane"  onsubmit="return false;"  lay-filter="example" action="">
                                <div class="layui-form-item">
                                    <div class="layui-inline">
                                        <input type="hidden" name="deptId" disabled autocomplete="off" class="layui-input">
                                        <label class="layui-form-label">部门</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="deptName" disabled autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">账号</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="username" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">姓名</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="realname" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>

                                    <div class="layui-inline">
                                        <label class="layui-form-label">性别</label>
                                        <div class="layui-input-block">
                                            <select name="sex" lay-filter="aihao">
                                                <option value=""></option>
                                                <option value="0">男</option>
                                                <option value="1">女</option>
                                            </select>
                                        </div>
                                    </div>

                                    <div class="layui-inline">
                                        <label class="layui-form-label">身份证</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="idcard" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">手机号</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="phone" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <button type="submit" class="layui-btn layui-btn-primary"  lay-submit lay-filter="data-search-btn"><i class="layui-icon"></i> 搜 索</button>
                                    </div>
                                </div>
                            </form>
                        </div>
                    </fieldset>

                    <script type="text/html" id="toolbarDemo">
                        <div class="layui-btn-container">
                            <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add"> 添加 </button>
                            <button class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn" lay-event="delete"> 删除 </button>
                        </div>
                    </script>

                    <table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>

                    <script type="text/html" id="currentTableBar">
                        <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="edit">编辑</a>
                        <a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>
                    </script>

                </div>
            </div>


        </div>
    </div>
</div>
<div>


</div>



<!-- 操作列 -->
<script type="text/html" id="auth-state">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="save">新增</a>
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>

<script src="../../lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script src="../../js/lay-config.js?v=1.0.4" charset="utf-8"></script>
<script src="/js/jquery-1.12.1.min.js"></script>
<script src="/js/common.js" charset="utf-8"></script>
<script>
    layui.use(['table', 'treetable','layer','form','tree', 'util'], function () {
        var $ = layui.jquery;
        var form=layui.form;
        var layer=layui.layer;
        var table = layui.table;
        var treetable = layui.treetable;
        var tree=layui.tree;
        var util=layui.util;

        let dataObj=api.getDepteModelTreeList();




        //常规用法
        tree.render({
            elem: '#test1' //默认是点击节点可进行收缩
            ,data: dataObj.data.list
            ,click: function(obj){
                form.val('example',{
                    deptName:obj.data.title,
                    deptId:obj.data.id
                })
                $(".layui-btn-primary").click();
            }
        });


        table.render({
            elem: '#currentTableId',
            method: 'post', //如果无需自定义HTTP类型，可不加该参数
            url: '/user/page',
            toolbar: '#toolbarDemo',
            contentType: 'application/json',
            request: {
                pageName: 'pageNum' //页码的参数名称，默认：page
                ,limitName: 'pageSize' //每页数据量的参数名，默认：limit
            },
            headers: {
                'Token':localStorage.getItem('Token')
            } ,//如果无需自定义请求参数，可不加该参数
            defaultToolbar: ['filter', 'exports', 'print', {
                title: '提示',
                layEvent: 'LAYTABLE_TIPS',
                icon: 'layui-icon-tips'
            }],
            cols: [[
                {type: "checkbox", width: 50},
                {field: 'id', width: 80, title: 'ID', sort: true},
                {field: 'username', width: 80, title: '用户名'},
                { field: 'sex', title: '性别' ,width: 80, templet: function (d) {
                        if(d.sex == 0){
                            res = "男"
                        }else{
                            res = "女"
                        }
                        return res;
                    }},
                {field: 'realname', title: '姓名', width: 150},
                {field: 'phone', width: 150, title: '手机号'},
                {field: 'idcard', width: 200, title: '身份证'},
                {field: 'email', width: 200, title: '邮箱', sort: true},
                {field: 'work', width: 100, title: '工作', sort: true},
                {field: 'createdate', width: 180, title: '创建时间', sort: true},
                {title: '操作', minWidth: 150, toolbar: '#currentTableBar', align: "center"}
            ]],
            limits: [10, 15, 20, 25, 50, 100],
            limit: 15,
            page: true,
            skin: 'line'
        });


        // 监听搜索操作
        form.on('submit(data-search-btn)', function (data) {
            //执行搜索重载
            table.reload('currentTableId', {
                page: {
                    curr: 1
                }
                , where: {
                    searchParams: data.field
                }
            }, 'data');

            return false;
        });


        /**
         * toolbar监听事件
         */
        table.on('toolbar(currentTableFilter)', function (obj) {
            if (obj.event === 'add') {  // 监听添加操作

                let deptId=$('input[name="deptId"]').val();
                console.log(deptId);
                if(deptId===undefined || deptId===''){
                    return layer.msg("未选择部门,请先选择左侧的部门")
                }
                var index = layer.open({
                    title: '添加用户',
                    type: 2,
                    shade: 0.2,
                    maxmin:true,
                    shadeClose: true,
                    area: ['100%', '100%'],
                    content: '../../page/user/adduser.html?obj='+deptId,
                    end:function(){
                        table.reload('currentTableId')
                    }
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
            } else if (obj.event === 'delete') {  // 监听删除操作
                var checkStatus = table.checkStatus('currentTableId')
                    , data = checkStatus.data;
                layer.alert(JSON.stringify(data));
            }
        });



        table.on('tool(currentTableFilter)', function (obj) {
            var data = obj.data;
            if (obj.event === 'edit') {

                var index = layer.open({
                    title: '编辑用户',
                    type: 2,
                    shade: 0.2,
                    maxmin:true,
                    shadeClose: true,
                    area: ['100%', '100%'],
                    content: '../../page/user/updateuser.html?obj='+data.id,
                    end:function(){
                        table.reload('currentTableId')
                    }
                });
                // $(window).on("resize", function () {
                //     layer.full(index);
                // });
                return false;
            } else if (obj.event === 'delete') {
                layer.confirm('真的删除行么', function (index) {
                    obj.del();
                    layer.close(index);
                });
            } else if (obj.event === 'role') {
                var index = layer.open({
                    title: '角色授权',
                    type: 2,
                    shade: 0.2,
                    maxmin:true,
                    shadeClose: true,
                    area: ['100%', '100%'],
                    content: '../../page/user/addroleuser.html?obj='+data.id,
                });
            }
        });



        /**
         * toolbar监听事件
         */
        table.on('toolbar(munu-table)', function (obj) {
            if (obj.event === 'add') {  // 监听添加操作
                var index = layer.open({
                    title: '添加单位',
                    type: 2,
                    shade: 0.2,
                    maxmin:true,
                    shadeClose: true,
                    area: ['100%', '100%'],
                    content: '../../page/dept/addparentdept.html',
                    end:function(){
                        location.reload();
                    }
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
            } else if (obj.event === 'delete') {  // 监听删除操作
                var checkStatus = table.checkStatus('currentTableId')
                    , data = checkStatus.data;
                layer.alert(JSON.stringify(data));
            }
        });

        $('#btn-expand').click(function () {
            treetable.expandAll('#munu-table');
        });

        $('#btn-fold').click(function () {
            treetable.foldAll('#munu-table');
        });

        //监听工具条
        table.on('tool(munu-table)', function (obj) {
            var data = obj.data;
            var layEvent = obj.event;
            console.log(JSON.stringify(data))
            if (layEvent === 'del') {
                layer.msg('删除' + data.id);
            } else if (layEvent === 'edit') {
                console.log("编辑===>")
                update(data)
            }else if (layEvent === 'save') {
                console.log("编辑===>")
                save(data);
            }
        });


        function save(data) {
            var index = layer.open({
                title: '添加科室',
                type: 2,
                shade: 0.2,
                maxmin:true,
                shadeClose: true,
                area: ['100%', '100%'],
                content: '../../page/dept/addchilddept.html?obj='+data.id,
                end:function(){
                    location.reload();
                }
            });
            $(window).on("resize", function () {
                layer.full(index);
            });
        }

        function update(data){
            console.log(JSON.stringify(data))
            var index = layer.open({
                title: '编辑部门',
                type: 2,
                shade: 0.2,
                maxmin:true,
                shadeClose: true,
                area: ['100%', '100%'],
                content: '../../page/dept/updatedept.html?obj='+data.id,
                end:function(){
                    location.reload();
                }
            });
        }

        form.on('submit(formDemo)', function (data) {
            console.log(JSON.stringify(data))
            let obj=api.saveMenuModel(data.field)
            layer.msg(JSON.stringify(obj))
            layer.close(index);
        })
    });
</script>
</body>
</html>